/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * Nuevo_producto.java
 *
 * Created on 15/06/2009, 06:25:53 PM
 */

package Compras;
import Control.Conexion;
import java.util.Vector;
import javax.swing.JOptionPane;
import java.awt.Color;
/**
 *
 * @author GAMA
 */
public class Nuevo_servicio extends javax.swing.JPanel {
Conexion c;
int bandera;
Mantenimiento_servicios frmServicio;

    private String vcodigo;
    private String vdescripcion;      
    private Integer codigo_usuario_auditoria=0;
    /** Creates new form Nuevo_producto */
    public Nuevo_servicio(Mantenimiento_servicios frmServicio, int bandera, Integer codigo_usuario_auditoria) {
       initComponents();
       this.codigo_usuario_auditoria=codigo_usuario_auditoria;
       cargar_codigo_servicio();
       this.frmServicio=frmServicio;
       this.bandera=bandera;

    }
public void cargar_codigo_servicio(){
    c=new Conexion();
    txtCodigoServicio.setText(""+c.retornar_siguiente_codigo_servicio());

}
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jTabbedPane1 = new javax.swing.JTabbedPane();
        jPanel2 = new javax.swing.JPanel();
        jLabel6 = new javax.swing.JLabel();
        txtdescripcion = new javax.swing.JTextField();
        txtCodigoServicio = new javax.swing.JTextField();
        jLabel2 = new javax.swing.JLabel();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();

        jPanel2.setLayout(null);

        jLabel6.setText("Descripcion:");
        jPanel2.add(jLabel6);
        jLabel6.setBounds(70, 80, 80, 20);

        txtdescripcion.addCaretListener(new javax.swing.event.CaretListener() {
            public void caretUpdate(javax.swing.event.CaretEvent evt) {
                txtdescripcionCaretUpdate(evt);
            }
        });
        txtdescripcion.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtdescripcionActionPerformed(evt);
            }
        });
        jPanel2.add(txtdescripcion);
        txtdescripcion.setBounds(150, 80, 250, 20);

        txtCodigoServicio.setEditable(false);
        jPanel2.add(txtCodigoServicio);
        txtCodigoServicio.setBounds(150, 40, 60, 20);

        jLabel2.setText("Codigo:");
        jPanel2.add(jLabel2);
        jLabel2.setBounds(90, 40, 70, 20);

        jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/Guardar16.gif"))); // NOI18N
        jButton1.setMnemonic('g');
        jButton1.setText("Guardar");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        jPanel2.add(jButton1);
        jButton1.setBounds(110, 130, 110, 25);

        jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/Cancelar16.gif"))); // NOI18N
        jButton2.setMnemonic('c');
        jButton2.setText("Cancelar");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });
        jPanel2.add(jButton2);
        jButton2.setBounds(250, 130, 100, 25);

        jTabbedPane1.addTab("Nuevo Servicio", null, jPanel2, "Registrar Nuevo Tipo de Servicio");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(162, Short.MAX_VALUE)
                .addComponent(jTabbedPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 460, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(139, 139, 139))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(82, 82, 82)
                .addComponent(jTabbedPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 198, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(120, Short.MAX_VALUE))
        );
    }// </editor-fold>//GEN-END:initComponents

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
        // TODO add your handling code here:
        String cod=txtCodigoServicio.getText();
        String desc=txtdescripcion.getText();
        boolean valido=true;
        if(txtdescripcion.getForeground()==Color.RED) valido=false;

        if(valido){
         if(bandera==1){
                this.registrar_servicio(cod, desc);
            }else{
                this.modificar_servicio(cod, desc);
            }

            this.frmServicio.getPanelContenedorOperario().removeAll();
            this.frmServicio.getPanelContenedorOperario().add(frmServicio);
            this.frmServicio.setVisible(false);
            this.frmServicio.setVisible(true);

           frmServicio.inicializar_tabla_servicios();
            limpiar_campos();
        }else{
            JOptionPane.showMessageDialog(this,"Ingrese sólo letras","No se puede guardar",JOptionPane.ERROR_MESSAGE);

        }

    }//GEN-LAST:event_jButton1ActionPerformed

    private void txtdescripcionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtdescripcionActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_txtdescripcionActionPerformed

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
        // TODO add your handling code here:
                this.frmServicio.getPanelContenedorOperario().removeAll();
        this.frmServicio.getPanelContenedorOperario().add(frmServicio);
        this.frmServicio.setVisible(false);
        this.frmServicio.setVisible(true);
    }//GEN-LAST:event_jButton2ActionPerformed

    private void txtdescripcionCaretUpdate(javax.swing.event.CaretEvent evt) {//GEN-FIRST:event_txtdescripcionCaretUpdate
        // TODO add your handling code here:
          String texto=txtdescripcion.getText();
          
          texto=texto.trim();
          char [] elemento=texto.toCharArray();
          boolean valido=true;
          for(int i=0;i<elemento.length;i++){
              if(Character.isLetter(elemento[i]) || elemento[i]=='.'){
                  valido=true;
              }else{
                  valido=false;
              }

          }
          if(!valido){
              txtdescripcion.setForeground(Color.RED);
          }else{
              txtdescripcion.setForeground(Color.BLACK);
          }

    }//GEN-LAST:event_txtdescripcionCaretUpdate

public void registrar_servicio(String codigo, String descripcion){
    c=new Conexion();
    try{
    c.registrar_servicio(codigo_usuario_auditoria,codigo, descripcion);
    JOptionPane.showMessageDialog(this,"Se ha registrado con éxito","Información",JOptionPane.INFORMATION_MESSAGE);
    }catch(Exception e){
        System.out.println("error");
    }
}


public void modificar_servicio(String cod, String desc){

    c=new Conexion();
    try{
    c.modificar_servicio(codigo_usuario_auditoria,cod, desc);

    JOptionPane.showMessageDialog(this,"Se ha registrado con éxito","Información",JOptionPane.INFORMATION_MESSAGE);
    }catch(Exception e){
        System.out.println("error");

    }

}
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JTabbedPane jTabbedPane1;
    private javax.swing.JTextField txtCodigoServicio;
    private javax.swing.JTextField txtdescripcion;
    // End of variables declaration//GEN-END:variables

    public void limpiar_campos(){
        this.txtdescripcion.setText("");
        
    }
   
    public String getVcodigo() {
        return vcodigo;
    }

    /**
     * @param vcodigo the vcodigo to set
     */
    public void setVcodigo(String vcodigo) {
        this.vcodigo = vcodigo;
        txtCodigoServicio.setText(vcodigo);
    }

    /**
     * @return the vdescripcion
     */
    public String getVdescripcion() {
        return vdescripcion;
    }

    /**
     * @param vdescripcion the vdescripcion to set
     */
    public void setVdescripcion(String vdescripcion) {
        this.vdescripcion = vdescripcion;
        txtdescripcion.setText(vdescripcion);
    }



}
